home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 1 / Meeting Pearls Vol 1 (1994).iso / installed_progs / text / faqs / free-compilers.part1 < prev    next >
Encoding:
Internet Message Format  |  1994-05-02  |  46.6 KB

  1. Subject: Catalog of compilers, interpreters, and other language tools [p1of5]
  2. Newsgroups: comp.compilers,comp.lang.misc,comp.archives.admin,news.answers,comp.answers
  3. From: free-compilers@idiom.berkeley.ca.us (Steve Robenalt)
  4. Date: Sun, 1 May 1994 11:00:16 GMT
  5.  
  6. Archive-name: free-compilers/part1
  7. Last-modified: 1994/4/29
  8. Version: 6.5
  9.  
  10.  
  11.  
  12. -------------------------------------------------------------------------------
  13. Catalog of Free Compilers and Interpreters.
  14. -------------------------------------------------------------------------------
  15. Copyright (c) 1993, David Muir Sharnoff, All Rights Reserved
  16. Copyright (c) 1994, Steven Allen Robenalt, All Rights Reserved
  17.  
  18.  
  19. This list catalogues freely available software for language tools, which
  20. includes the following: compilers, compiler generators, interpreters, 
  21. translators, important libraries, assemblers, etc.  -- things whose user 
  22. interface is a language.  Natural language processing tools may also 
  23. be included.
  24.  
  25. This list is primarily aimed at developers rather than researchers, and
  26. consists mainly of citations for production quality systems.  There is some
  27. overlap of coverage between this document and other lists and catalogs.     See
  28. the references section for a list...
  29.  
  30. All the listed items should be free and come with source code, exceptions have
  31. generally been deleted from the list in the past.  If you find any such items
  32. in the list let me know and I'll remove them.
  33.  
  34. The latest version of the catalog can be ftp'ed: get
  35. pub/compilers-list/free-compilers from idiom.berkeley.ca.us.
  36.  
  37. This catalog is available through World Wide Web.  A searchable
  38. hypertext version can be accessed through http://cui_www.unige.ch/freecomp.
  39. (As of the middle of January, the WWW version was still based on rev. 5.2)
  40.  
  41. Not all entries have complete citations.  Some fields are filled with question
  42. marks (?).  Fields with both the ? and an entry are implicit requests for
  43. confirmation.  Also, specific questions will often be asked [in brackets --ed].
  44.  
  45. Please send updates to <free-compilers@idiom.berkeley.ca.us>.  If you
  46. fill out the template (see the first entry in the tools section) it is
  47. a lot easier for me to keep things going.  
  48.  
  49. Thanks,
  50.  
  51. -Steve Robenalt
  52.  
  53. -------------------------------------------------------------------------------
  54. overview (table of contents)
  55. -------------------------------------------------------------------------------
  56.  
  57.     introduction
  58.     overview (table of contents)
  59.     changes and history
  60.     prototype entry
  61.     tools
  62.         scripting languages
  63.         functional languages
  64.         C and variants
  65.         compiled, imperative languages
  66.         object oriented languages
  67.         LISP family langauges
  68.         Wirth family languages
  69.         logic programming languages
  70.         concurrent, parallel, and simulation languages
  71.         Forth family languages
  72.         compiler generators and related tools
  73.         mathematical tools and languages
  74.         electrical engineering languages
  75.         document formatting languages
  76.         assemblers
  77.         macro preprocessors
  78.         special purpose languages
  79.         natural languages
  80.         curiosities
  81.         unable to classify due to lack of knowledge
  82.     references
  83.     archives
  84.     cross-reference
  85.  
  86. -------------------------------------------------------------------------------
  87. changes and history
  88. -------------------------------------------------------------------------------
  89.  
  90. This document grew out of David Muir Sharnoff filing away postings that he 
  91. saw (mostly Ed Vielmetti's postings to comp.archives) during 1991 and the 
  92. first half of 1992.  At the Summer 1992 USENIX Technical Conference, the 
  93. other attendees of the archivists BOF convinced David to compile his data 
  94. into a posting.  David posted for about one year, then turned the list over 
  95. to Mark Hopkins.  Mark Hopkins <mark@freenet.uwm.edu> took care of it for 
  96. the summer of 1993 and then gave it back to David Sharnoff when he dropped 
  97. off the net.  Steve Robenalt <robenalt@orange.digex.net> has taken over 
  98. the list maintenance from Dave, but Dave's organization, Idiom Consulting,
  99. remains as the focal point for information to be submitted.
  100.  
  101. Mark Hopkins will be returning next month to maintain the list! Dave, Mark,
  102. and I will be rotating responsibilities for maintaining the list on an     
  103. irregular basis (the list will be regular, but the rotations won't).
  104.  
  105. For this version the changes are:
  106.  
  107.  
  108.     language        package
  109.     --------        -------
  110. new listings:
  111.     Common LISP        Hyperlisp - real-time enhancement to mcl
  112.     PL/M            PL/M grammar and parser
  113.     Modula-2        Mocka - modula-2 for 386BSD and Linux
  114. new versions:
  115.     Dylan            Thomas - new version, added ftp site
  116.     Dylan            Marlais - new version, added ftp site
  117.     EBNF            PCCTS - new version, now generates C++
  118.     ADA            gnat - new version 1.78.l1
  119. deletions:
  120. edits:    
  121.     Common Lisp        Cartier's Contribs    
  122.     Common Lisp        QT-OBJECTS    
  123.     ici            new ftp site, new port
  124.     Milarepa        new ftp site
  125.     Modula-2        mtc - modula-2 to C translator
  126. new cross-references:
  127. new references:
  128. new archives:
  129.  
  130. -------------------------------------------------------------------------------
  131. prototype entry
  132. -------------------------------------------------------------------------------
  133. Every entry should at least have the fields marked with two asterisks (**).
  134.  
  135. language:    **Reference Entry 
  136.         Language: what the software compiles/interprets...
  137. package:    **The name of the package
  138. version:    **Its current version
  139. parts:        **compiler, assembler, interpreter, translator, grammar(yacc,
  140.         lex), library, documentation, examples, assembler, simulator,
  141.         tutorial, test suite, byte-code compiler, run-time,
  142.         translator(from->to)...     Compilers that use C as an 
  143.         intermediate lanaguage should be noted as "compiler(->C)".
  144.         Compilers that compile into a coded representation that is
  145.         interpreted by a runtime module should be noted as "bytecode
  146.         compiler".  Do not say "source code" -- if source is not
  147.         included, do not send an entry at all!
  148. author:        **the creator of the package.  Email addresses are in the 
  149.         form "Real Name <email@address>".  Surface mail addresses
  150.         are not used unless there is no email address.
  151. how to get:    **where to get the source, how to get it -- usually an FTP site
  152.         or two.     May have subheaders for specific areas or different
  153.         ports of the software (don't overdo this!):  Only official
  154.         sites should be listed.     The format for ftp directives is "ftp
  155.         dir/file from host", although valid URL's are acceptable too.
  156.         No IP address is given.
  157.     N.America:    Sites for North Americans.
  158.     Europe:    Sites Europeans should use
  159.     Japan:    Sites for people in Japan
  160.     OS/2:    Sites with OS/2 ports.
  161. description:    **what the package is, possibly including some history
  162.         A short review encouraged, but no propaganda please.
  163. conformance:    how well does it conform to the existing Standard, if one exists
  164. reference:    research references and other external documentation.
  165. features:    salient features not listed in the description.
  166. bugs:        known bugs (also: where to go to find/report bugs)
  167. restriction:    restrictions using the software will place on the user.
  168. requires:    what is needed to install it.  A C compiler is assumed.
  169. ports:        where it has been installed
  170. portability:    how system-independent is it, system dependencies.
  171. status:        development status (active, history, supported, etc)
  172. discussion:    where discussion about the package takes place
  173. help:        where help may be gotten from
  174. support:    where support may be gotten from
  175. contributions:    possible requests for money contributions (but no shareware)
  176. announcements:    where new releases are announced
  177. contact:    who to reach concerning the package (if not author)
  178. updated:    **last known update to the package, not time of the update 
  179.         to the entry in the catalog!
  180.  
  181. In addition to the above, in entries for categories, and languages, 
  182. cross-references can be made.  
  183. cref:        cross-reference to a category
  184. lref:        cross-reference to a language
  185. iref:        (language it's filed under in parenthesis) cross-reference 
  186.         to an implementation
  187.  
  188. -------------------------------------------------------------------------------
  189. tools
  190. -------------------------------------------------------------------------------
  191.  
  192. scripting languages
  193. -------------------------------------------------------------------------------
  194. category:    scripting languages
  195. description:    These are languages that are primarily interpreted, and on 
  196.         unix sytems, can ususally be invoked directly from a text 
  197.         using #!.  
  198.  
  199. language:    ABC
  200. package:    ABC
  201. version:    1.04.01
  202. parts:        interpreter/compiler
  203. author:        Leo Geurts, Lambert Meertens, 
  204.         Steven Pemberton <Steven.Pemberton@cwi.nl>
  205. how to get:    ftp programming/languages/abc/* from ftp.eu.net or ftp.nluug.nl
  206. description:    ABC is an imperative language embedded in its own environment.
  207.         It is interactive, structured, high-level, very easy to learn,
  208.         and easy to use.  It is suitable for general everyday
  209.         programming, such as you would use BASIC, Pascal, or AWK for.
  210.         It is not a systems-programming language. It is an excellent
  211.         teaching language, and because it is interactive, excellent for
  212.         prototyping.  ABC programs are typically very compact, around a
  213.         quarter to a fifth the size of the equivalent Pascal or C
  214.         program.  However, this is not at the cost of readability, on
  215.         the contrary in fact.
  216. reference:    "The ABC Programmer's Handbook" by Leo Geurts,
  217.         Lambert Meertens and Steven Pemberton, published by 
  218.         Prentice-Hall (ISBN 0-13-000027-2)
  219.         "An Alternative Simple Language and Environment for PCs" 
  220.         by Steven Pemberton, IEEE Software, Vol. 4, No. 1, 
  221.         January 1987, pp.  56-64.
  222. ports:        unix, MSDOS, atari, mac
  223. discussion:    abc-list-request@cwi.nl
  224. contact:    abc@cwi.nl
  225. updated:    1991/05/02
  226.  
  227. language:    awk (new)
  228. package:    mawk
  229. version:    1.1.3
  230. parts:        interpreter
  231. author:        Mike Brennan <brennan@bcsaic.boeing.com>
  232. how to get:    ftp public/mawk* from oxy.edu
  233. description:    ?
  234. conformance:    superset
  235.         + RS can be a regular expression
  236. features:    + faster than most new awks
  237. ports:        sun3,sun4:sunos4.0.3 vax:bsd4.3,ultrix4.1 stardent3000:sysVR3 
  238.         decstation:ultrix4.1 msdos:turboC++
  239. status:        actively developed
  240. contact:    Mike Brennan <brennan@bcsaic.boeing.com>
  241. updated:    1993/03/14
  242.  
  243. language:    awk (new)
  244. package:    GNU awk (gawk)
  245. version:    2.15.3
  246. parts:        interpreter, documentation
  247. author:        David Trueman <david@cs.dal.ca> and 
  248.         Arnold Robbins <arnold@cc.gatech.edu>
  249. how to get:    ftp gawk-2.15.tar.Z from a GNU archive site
  250. description:    ?
  251. conformance:    superset including some Plan 9 features
  252. ports:        unix, msdos:msc5.1
  253. status:        activly developed
  254. updated:    1993/11/08
  255.  
  256. language:    BASIC
  257. package:    bwBASIC (Bywater BASIC interpreter)
  258. version:    2.10
  259. parts:        interpreter, shell, ?
  260. author:        Ted A. Campbell <tcamp@delphi.com>
  261. how to get:    comp.sources.misc volume 40
  262. description:    The Bywater BASIC Interpreter (bwBASIC) implements a large
  263.         superset of the ANSI Standard for Minimal BASIC (X3.60-1978)
  264.         implemented in ANSI C, and offers a simple interactive environ-
  265.         ment including some shell program facilities as an extension of
  266.         BASIC. The interpreter has been compiled successfully on a
  267.         range of ANSI C compilers on varying platforms with no
  268.         alterations to source code necessary.
  269. ports:        DOS, Unix, Acorn's RISC OS
  270. updated:    1993/10/29
  271.  
  272. language:    BASIC
  273. package:    ? basic ?
  274. version:    ?
  275. parts:        paser(yacc), interpreter
  276. author:        ?
  277. how to get:    comp.sources.unix archives volume 2
  278. description:    ?
  279. updated:    ?
  280.  
  281. language:    BASIC
  282. package:    ? bournebasic ?
  283. version:    ?
  284. parts:        interpreter
  285. author:        ?
  286. how to get:    comp.sources.misc archives volume 1
  287. description:    ?
  288. updated:    ?
  289.  
  290. language:    BASIC
  291. package:    ubasic
  292. version:    8
  293. parts:        ?
  294. author:        Yuji Kida
  295. how to get:    ? ask archie ?
  296. description:    ?
  297. reference:    reviewed in Notices of the A.M.S #36 (May/June 1989),
  298.         and "A math-oriented high-precision BASIC", #38 (3/91)
  299. contact:    ?
  300. updated:    1992/07/06
  301.  
  302. language:    BASIC
  303. package:    ?
  304. version:    ?
  305. parts:        interpreter
  306. author:        ?
  307. how to get:    ftp pub/unix-c/languages/basic/basic.tar-z from oak.oakland.edu
  308. description:    public domain version of DEC's MU-Basic with Microsoft
  309.         Basic mixed together
  310. contact:    ?
  311. updated:    ?
  312.  
  313. language:    Bourne Shell
  314. package:    ash
  315. version:    ?
  316. parts:        interpreter, manual page
  317. author:        Kenneth Almquist
  318. how to get:    ftp from any 386BSD, NetBSD, or FreeBSD archive
  319.     linux:    ftp pub/linux/ports/ash-linux-0.1.tar.gz from ftp.win.tue.nl
  320. description:    A Bourne Shell clone.  It works pretty well.  For running
  321.         scripts, it is sometimes better and sometimes worse than Bash.
  322. ports:        386BSD, NetBSD, FreeBSD, Linux
  323. updated:    ?
  324.  
  325. language:    csh (C-Shell)
  326. package:    tcsh
  327. version:    6.04
  328. parts:        interpreter
  329. author:        Christos Zoulas <christos@ee.cornell.edu>
  330. how to get:    ftp ? from ftp.spc.edu
  331. description:    a modified C-Shell with history editing
  332. ports:        unix, OpenVMS
  333. updated:    1993/07/09
  334.  
  335. language:    ERGO-Shell (a window-based Unix shell)
  336. package:    ERGO-Shell
  337. version:    2.1
  338. parts:        interpreter
  339. author:        Regine Freitag <freitag@gmd.de>
  340. how to get:    ftp gmd/ergo/? from ftp.gmd.de 
  341. description:    An ergonomic window-based Unix shell for software engineers.
  342.         [Can one program in ERGO-Shell? --ed]
  343. bugs:        Relative path names are not expanded on the SUN 3 port,
  344.         expansion ability on SUN 4 only on certain conditions.
  345. requires:    Needs X-windows (X11R4) or OSF/Motif (revision 1.1)
  346. ports:        Sun 4
  347. contact:    Dr. Wolfgang Dzida, GMD <dzida@gmd.de> or the author
  348. updated:    1993/06/04
  349.  
  350. language:    es (a functional shell)
  351. package:    es
  352. version:    0.84
  353. parts:        interpreter
  354. author:        Byron Rakitzis <byron@netapp.com>, Paul Haahr <haahr@adobe.com>
  355. how to get:    ftp pub/es/es-0.84.tar.Z from ftp.sys.utoronto.ca
  356. description:    shell with higher order functions
  357.         + builtin features implemented as redefineable functions
  358. updated:    1993/04/30
  359.  
  360. language:    Glish
  361. package:    glish
  362. version:    2.4.1
  363. parts:        interpreter, C++ class library, user manual
  364. author:        Vern Paxson <vern@ee.lbl.gov>
  365. how to get:    ftp glish/glish-2.4.1.tar.Z from ftp.ee.lbl.gov
  366. description:    Glish is an interpretive language for building loosely-coupled
  367.         distributed systems from modular, event-oriented programs.
  368.         These programs are written in conventional languages such as C,
  369.         C++, or Fortran.  Glish scripts can create local and remote
  370.         processes and control their communication.  Glish also provides
  371.         a full, array-oriented programming language (similar to S) for
  372.         manipulating binary data sent between the processes.  In
  373.         general Glish uses a centralized communication model where
  374.         interprocess communication passes through the Glish
  375.         interpreter, allowing dynamic modification and rerouting of
  376.         data values, but Glish also supports point-to-point links
  377.         between processes when necessary for high performance.
  378. reference:    "Glish: A User-Level Software Bus for Loosely-Coupled
  379.         Distributed Systems," Vern Paxson and Chris Saltmarsh,
  380.         Proceedings of the 1993 Winter USENIX Conference, San Diego,
  381.         CA, January, 1993.
  382. requires:    C++
  383. ports:        SunOS, Ultrix, HP/UX (rusty)
  384. updated:    1993/11/01
  385.  
  386. language:       ici
  387. package:        ici
  388. version:        ?
  389. parts:          interpreter, documentation, examples
  390. author:         Tim Long
  391. how to get:     ftp pub/ici.tar.Z from ftp.su.edu.au
  392.         ftp pub/oz/ici.tar.Z from nexus.yorku.ca
  393. description:    ICI has dynamic arrays, structures and typing with the flow
  394.                 control constructs, operators and syntax of C.  There are
  395.                 standard functions to provided the sort of support provided
  396.                 by the standard I/O and the C libraries, as well as additional
  397.                 types and functions to support common needs such as simple
  398.                 data bases and character based screen handling.
  399. features:       + direct access to many system calls
  400.                 + structures, safe pointers, floating point
  401.                 + simple, non-indexed built in database
  402.                 + terminal-based windowing library
  403. ports:          Sun4, 80x86 Xenix, NextStep, MSDOS, HP-UX
  404. portability:    high
  405. status:         actively developed.
  406. discussion:     send "help" to listserv@research.canon.oz.au
  407. contact:        Andy Newman <andy@research.canon.oz.au>
  408. updated:        1994/04/18
  409.  
  410. language:    Icon
  411. package:    icon
  412. version:    8.8 (8.7, 8.5, 8.0 depending on platform)
  413. parts:        interpreter, compiler (some platforms), library (v8.8)
  414. author:        Ralph Griswold <ralph@CS.ARIZONA.EDU>
  415. how to get:    ftp icon/* from cs.arizona.edu
  416.         MS-DOS version: ftp norman/iconexe.zip from bellcore.com
  417. description:    Icon is a high-level, general purpose programming language that
  418.         contains many features for processing nonnumeric data,
  419.         particularly for textual material consisting of string of
  420.         characters.
  421.         - no packages, one name-space
  422.         - no exceptions
  423.         + object oriented features
  424.         + records, sets, lists, strings, tables
  425.         + unlimited line length
  426.         - unix interface is primitive
  427.         + co-expressions
  428. reference:    "The Icon Programmming Language", Ralph E. Griswold and 
  429.         Madge T. Griswold, Prentice Hall, seond edition, 1990.
  430.         "The Implementation of the Icon Programmming Language", 
  431.         Ralph E. Griswold and Madge T. Griswold, Princeton 
  432.         University Press 1986
  433. ports:        Amiga, Atari, CMS, Macintosh, Macintosh/MPW, MSDOS, MVS, OS/2,
  434.         Unix (most variants), VMS, Acorn
  435. discussion:    comp.lang.icon
  436. contact:    icon-project@cs.arizona.edu
  437.         mengarini@delphi.com for MS-DOS version
  438. updated:    1992/08/21
  439.  
  440. language:    Icon
  441. iref:        (BNF) ibpag2
  442.  
  443. language:    IVY
  444. package:    Ivy
  445. version:    experimental
  446. parts:        interpreter
  447. author:        Joseph H Allen <jhallen@world.std.com>
  448. how to get:    alt.sources 1993/09/28 <CE1wo3.74A@world.std.com>
  449. description:    A language with a pleasant syntax compared to perl, tcl or
  450.         lisp.  It has nice features like low punctuation count, blocks
  451.         indicated by indentation, and similarity to normal procedural
  452.         languages.  This language started out as an idea for an
  453.         extension language for the editor JOE.
  454. updated:    1993/09/28
  455.  
  456. language:    Korn Shell
  457. package:    SKsh
  458. version:    2.1
  459. parts:        interpreter, utilities
  460. author:        Steve Koren <koren@hpfcogv.fc.hp.com>
  461. how to get:    ftp pub/amiga/incom*/utils/SKsh021.lzh from hubcap.clemson.edu
  462. description:    SKsh is a Unix ksh-like shell which runs under AmigaDos.
  463.         it provides a Unix like environment but supports many
  464.         AmigaDos features such as resident commands, ARexx, etc.
  465.         Scripts can be written to run under either ksh or SKsh,
  466.         and many of the useful Unix commands such as xargs, grep,
  467.         find, etc. are provided.
  468. ports:        Amiga
  469. updated:    1992/12/16
  470.  
  471. language:    Korn Shell 
  472. package:    Bash (Bourne Again SHell)
  473. version:    1.13.4
  474. parts:        parser(yacc), interpreter, documentation
  475. author:        Brian Fox <bfox@vision.ucsb.edu>
  476. how to get:    ftp bash-1.12.tar.Z from a GNU archive site
  477. description:    Bash is a Posix compatable shell with full Bourne shell syntax,
  478.         and some C-shell commands built in.  The Bourne Again Shell
  479.         supports emacs-style command-line editing, job control,
  480.         functions, and on-line help.  
  481. bugs:        gnu.bash.bug, bug-bash@prep.ai.mit.edu
  482. restriction:    GNU General Public License
  483. updated:    1993/11/15
  484.  
  485. language:    Korn Shell
  486. package:    pdksh
  487. version:    4.9
  488. parts:        interpreter
  489. author:        Simon J. Gerraty <sjg@zen.void.oz.au>
  490. how to get:    comp.sources.misc volume 4
  491. description:    It is not intended to be the ultimate shell but rather a usable
  492.         ksh work alike.
  493. conformance:    Almost identical to ksh88, but missing arrays
  494. contact:    Simon J Gerraty <sjg@melb.bull.oz.au> (zen.void.oz.au is down)
  495. ports:        Sun, 386bsd, ?
  496. updated:    1993/10/11
  497.  
  498. language:    Perl5 (Practical Extraction and Report Language)
  499. package:    perl
  500. version:    5.0 alpha 3
  501. parts:        interpreter, debugger, libraries, tests, documentation
  502. author:        Larry Wall <lwall@netlabs.com>
  503. how to get:    ftp pub/perl5.0/* from ftp.netlabs.com 
  504. description:    perl5 is a major rewrite and enhancement to perl4.  It adds    
  505.         real data structures (by way of "references"), un-adorned
  506.         subroutine calls, and method inheritance.  It is not 
  507.         stable (yet).
  508. ports:        SunOS
  509. updated:    1993/11
  510.  
  511. language:    Perl (Practical Extraction and Report Language)
  512. package:    perl
  513. version:    4.0 patchlevel 36
  514. parts:        interpreter, debugger, libraries, tests, documentation
  515. author:        Larry Wall <lwall@netlabs.com>
  516. how to get:    ftp pub/perl.4.0/* from jpl-devvax.jpl.nasa.gov 
  517.     OS/2 port:    ftp pub/os2/all/unix/prog*/perl4019.zip from hobbes.nmsu.edu
  518.     Mac port:    ftp software/mac/src/mpw_c/Mac_Perl_405_* from nic.switch.ch
  519.     Amiga port: ftp perl4.035.V010.* from wuarchive.wustl.edu
  520.     VMS port:    ftp software/vms/perl/* from ftp.pitt.edu
  521.     Atari port: ftp amiga/Languages/perl* from atari.archive.umich.edu
  522.     DOS port:    ftp pub/msdos/perl/* from ftp.ee.umanitoba.ca
  523.     DOS port#2: ftp pub/msdos/perl/bperl* from oak.oakland.edu
  524.     Windows NT: ftp pub/pc/win3/nt/ntperl*.zip from cica.cica.indiana.edu
  525.     MVS:    ftp dist/perl-4036.tar.Z from oozelum.csi.cam.ac.uk
  526.     Netware:    contact Jack Thomasson <Jack_Thomasson@Novell.COM>
  527. description:    perl is an interpreted language optimized for scanning 
  528.         arbitrary text files, extracting information from those text
  529.         files, and printing reports based on that information.    It's
  530.         also a good language for many system management tasks.    
  531. reference:    "Programming Perl" by Larry Wall and Randal L. Schwartz,
  532.         O'Reilly & Associates, Inc.  Sebastopol, CA.
  533.         ISBN 0-93715-64-1
  534.         "Learning Perl" by Randal L. Schwartz, 
  535.         O'Reilly & Associates, Inc.  Sebastopol, CA.
  536.         ISBN [??? --ed]
  537.         The perl FAQ, ftp from rtfm.mit.edu
  538. features:    + very-high semantic density becuase of powerful operators
  539.         like regular expression substitution
  540.         + exceptions, provide/require
  541.         + associative array can be bound to dbm files
  542.         + no arbitrary limits
  543.         + direct access to almost all system calls
  544.         + can access binary data 
  545.         + many powerful idioms for common tasks
  546.         + 8-bit clean, including nulls
  547.         - three variable types: scalar, array, and hash table
  548.         - syntax requires variable and function prefix characters
  549. bugs:        comp.lang.perl; Larry Wall <lwall@netlabs.com>
  550. ports:        almost all unix, MSDOS, Mac, Amiga, Atari, OS/2, VMS, NT, MVS
  551. portability:    very high for unix, not so high for others
  552. discussion:    comp.lang.perl
  553.     Macintosh:    mpw-perl-request@iis.ee.ethz.ch
  554. updated:    1993/02/07
  555.  
  556. language:    perl, awk, sed, find
  557. package:    a2p, s2p, find2perl
  558. version:    ?
  559. parts:        translators(perl)
  560. author:        Larry Wall
  561. how to get:    comes with perl
  562. description:    translators to turn awk, sed, and find programs into perl 
  563.         programs.
  564. updated:    ?
  565.  
  566. language:    perl, yacc
  567. package:    perl-byacc
  568. version:    1.8.2
  569. parts:        parser-generator(perl)
  570. author:        Rick Ohnemus <rick@IMD.Sterling.COM>
  571. how to get:    ftp local/perl-byacc.tar.Z from ftp.sterling.com
  572. description:    A modified version of byacc that generates perl code.  Has '-p'
  573.         switch so multiple parsers can be used in one program (C or
  574.         perl).
  575. portability:    Should work on most (?) Unix systems.  Also works with 
  576.         SAS/C 6.x on AMIGAs.
  577. updated:    1993/01/24
  578.  
  579. language:    Perl
  580. package:    perl profiler.
  581. version:    ? 1
  582. parts:        profiler
  583. author:        Anthony Iano-Fletcher <arf@maths.nott.ac.uk>
  584. how to get:    Source posted on comp.lang.perl in mid-June 1993
  585. description:    Profiles Perl scripts (mkpprof).
  586.         Collates data from Perl scripts (pprof)
  587. updated:    1993/06/17
  588.  
  589. language:    Perl
  590. package:    Dylperl
  591. version:    ?
  592. author:        Roberto Salama <rs@fi.gs.com>
  593. how to get:    posted to comp.lang.perl, 1993/08/11, <CBM3Bo.Lpw@fi.gs.com>
  594. description:    A dynamic linking package for perl.  Dynamically-loaded 
  595.         functions are accessed as if they were user-defined funtions.
  596.         This code is based on Oliver Sharp's May 1993 article in 
  597.         Dr. Dobbs Journal (Dynamic Linking under Berkeley UNIX).
  598. ports:        ?
  599. updated:    1993/08/11
  600.  
  601. language:    Perl
  602. package:    curseperl
  603. version:    ?
  604. author:        Larry Wall <lwall@netlabs.com>
  605. how to get:    comes with perl
  606. description:    A curses library for perl
  607. updated:    ?
  608.  
  609. language:    Python
  610. package:    Python
  611. version:    1.0.0
  612. parts:        interpeter, libraries, documentation, emacs macros
  613. author:        Guido van Rossum <guido@cwi.nl>
  614. how to get:    ftp pub/python* from ftp.cwi.nl
  615.     N.America:    ftp pub/plan/python/cwi from gatekeeper.dec.com
  616.     Erope:    ftp pub/unix/languages/python from ftp.fu-berlin.de
  617. description:    Python is a simple, yet powerful programming language
  618.         that bridges the gap between C and shell programming,
  619.         and is thus ideally suited for rapid prototyping.  Its
  620.         syntax is put together from constructs borrowed from a
  621.         variety of other languages; most prominent are
  622.         influences from ABC, C, Modula-3 and Icon.  Python is
  623.         object oriented and is suitable for fairly large programs.
  624.         + packages
  625.         + exceptions
  626.         + good C interface
  627.         + dynamic loading of C modules
  628.         - arbitrary restrictions
  629. References:    Pythong documentation URL <http://www.cwi.nl/~guido/Python.html>
  630. ports:        unix and Macintosh
  631. discussion:    python-list-request@cwi.nl
  632. updated:    1993/07/31
  633.  
  634. language:    Q (also small subsets of Common Lisp and Scheme)
  635. package:    Q
  636. version:    ? 1
  637. parts:        interpreter, compiler framework, libraries, documentation
  638. author:        Per Bothner <bothner@cygnus.com>
  639. how to get:    ftp pub/Q.* from ftp.cygnus.com
  640. description:    Q is a very high-level programming language, and a test-bed
  641.         for programming language ideas.     Where APL uses arrays
  642.         to explicit looping, Q uses generalized sequences
  643.         (finite or infinite, stored or calculated on demand).
  644.         It has lexical scoping, and some support for logical and
  645.         constraint programming.     The syntax was designed for
  646.         convenient interactive use.  A macro facility together
  647.         with primitives to run programs is used to make an
  648.         interactive command language with full shell features.
  649.         The Q system is written in C++, and its run-time code
  650.         may be useful to people implementing other languages.
  651. ports:        Linux and SUN 4
  652. portability:    Should work on 32-bit Unix-like systems
  653. updated:    1993/06/07
  654.  
  655. language:    REXX
  656. package:    The Regina Rexx Interpreter
  657. version:    0.05i
  658. parts:        interpreter, documentation, test programs
  659. author:        Anders Christensen <anders@pvv.unit.no>
  660. how to get:    ftp pub/rexx/regina-0.05g.tar.Z from flipper.pvv.unit.no
  661.     N.America:    ftp pub/freerexx/regina/regina-0.05d.tar.Z
  662.         from rexx.uwaterloo.ca
  663. description:    A Rexx interpreter.  The VMS version has an almost complete
  664.         set of DCL lexical functions in the interpreter.  Ports to
  665.         MS-DOS and OS/2 exist by lack special support for these
  666.         platforms.
  667. conformance:    Almost completely to Rexx Language Level 4.00 with some 
  668.         Rexx SAA API extensions.
  669. restriction:    GNU General Public License
  670. ports:        Unix, VMS, MS-DOS (partial), OS/2 (partial)
  671. discussion:    comp.lang.rexx
  672. updated:    1993/10/15
  673.  
  674. language:    REXX
  675. package:    ?
  676. version:    102
  677. parts:        interpreter
  678. author:        ? al ? 
  679. how to get:    ftp alrexx/rx102.tar.Z from rexx.uwaterloo.ca
  680.     USA:    ftp ? from tony.cat.syr.edu
  681. description:    ?
  682. requires:    C++
  683. ports:        unix
  684. discussion:    comp.lang.rexx
  685. contact:    ?
  686. updated:    1992/05/13
  687.  
  688. language:    REXX
  689. package:    imc
  690. version:    1.3
  691. parts:        interpreter
  692. author:        ?
  693. how to get:    ftp pub/freerexx/imc/rexx-imc-1.3.tar.Z from rexx.uwaterloo.ca
  694. description:    ?
  695. ports:        SunOS
  696. updated:    ?
  697.  
  698. language:    sed
  699. package:    GNU sed 
  700. version:    2.03
  701. parts:        interpreter, ?
  702. author:        Tom Lord <lord+@andrew.cmu.edu>
  703. how to get:    ftp sed-* from a GNU archive site
  704. description:    A SED interpreter.  Sed is a stream editing filter language.
  705. bugs:        bug-gnu-utils@prep.ai.mit.edu
  706. updated:    1993/08/09
  707.  
  708. language:    rc (Plan 9 shell)
  709. package:    rc
  710. version:    1.4
  711. parts:        interpretor
  712. author:        Byron Rakitzis <byron@netapp.com>
  713. how to get:    ftp pub/rc/* from ftp.white.toronto.edu
  714. description:    a free implementation of the Plan 9 shell.
  715. discussion:    rc-request@hawkwind.utcs.toronto.edu
  716. updated:    1992/05/26
  717.  
  718. language:    S-Lang
  719. package:    slang
  720. version:    0.94
  721. parts:        interpreter, documentation, examples
  722. author:        John E. Davis <davis@amy.tch.harvard.edu>
  723. how to get:    ftp pub/slang/* from amy.tch.harvard.edu
  724. description:    A small but highly functional embedded interpreter.  S-Lang was
  725.         a stack-based postfix language resembling Forth and BC/DC with
  726.         limited support for infix notation.   Now it has a C-like infix
  727.         syntax.     Arrays, Stings, Integers, Floating Point, and
  728.         Autoloading are all suported.  The editor JED embeds S-lang.
  729. restrictions:    GNU Library General Public License
  730. ports:        MSDOS, Unix, VMS
  731. portability:    Must be compiled with large memory model on MSDOS.
  732. updated:    1993/06/12
  733.  
  734. language:    Snobol4
  735. package:    SIL (Macro Implementation of SNOBOL4)
  736. version:    3.11
  737. parts:        ?
  738. author:        ?
  739. how to get:    ftp snobol4/* from cs.arizona.edu
  740. description:    ?
  741. contact:    snobol4@arizona.edu
  742. updated:    1986/07/29
  743.  
  744. language:    Snobol4
  745. package:    vanilla
  746. version:    ?
  747. parts:        ?
  748. author:        Catspaw, Inc.
  749. how to get:    ftp snobol4/vanilla.arc from cs.arizona.edu
  750. description:    ?
  751. ports:        MSDOS
  752. contact:    ?
  753. updated:    1992/02/05
  754.  
  755. language:    ssh (Steve's Shell)
  756. package:    ssh
  757. version:    1.7
  758. parts:        interpreter
  759. author:        Steve Baker <ice@judy.indstate.edu> with help from Thomas Moore
  760. how to get:    comp.sources.unix volume 26
  761. description:    A unix shell with a lot of csh/ksh-like features.
  762. ports:        sequent, sun, next, ultrix, bsdi
  763. updated:    1993/04/15
  764.  
  765. language:    TCL (Tool Command Language)
  766. package:    Tcl
  767. version:    7.3
  768. parts:        interpreter, libraries, tests, documentation
  769. author:        John Ousterhout <ouster@cs.berkeley.edu>
  770. how to get:    ftp ucb/tcl/tcl* from ftp.cs.berkeley.edu
  771.     MSDOS:    ftp ? from cajal.uoregon.edu
  772.     Macintosh:    ftp pub/ticl from bric-a-brac.apple.com
  773.     Macintosh:    ftp pub/tcl/distrib/MacTcl7.3.sea.* from harbor.ecn.purdue.edu
  774.     Examples:    ftp tcl/* from barkley.berkeley.edu
  775.     Kanji:    ftp pub/lang/tcl/jp/tk3.2jp-patch.Z from srawgw.sra.co.jp
  776. description:    TCL started out as a small language that could be
  777.         embedded in applications.  It has now been extended
  778.         into more of a general purpose shell type programming
  779.         language.  TCL is like a text-oriented Lisp, but lets
  780.         you write algebraic expressions for simplicity and to
  781.         avoid scaring people away.  TCL's greatest strength is that
  782.         everything is a string.     This is also its weakness.
  783.         + may be used as an embedded interpreter
  784.         + exceptions, packages (called libraries)
  785.         - only a single name-space
  786.         + provide/require
  787.         - no dynamic loading ability
  788.         + 8-bit clean
  789.         - only three variable types: strings, lists, associative arrays
  790. bugs:        ?
  791. ports:        ?
  792. discussion:    comp.lang.tcl
  793. updated:    1993/11/15
  794.  
  795. language:    TCL, Tk
  796. package:    Tk
  797. version:    3.5
  798. parts:        Tcl interpreter, Tk?
  799. author:        John Ousterhout <ouster@sprite.Berkeley.EDU>
  800. how to get:    ftp ucb/tcl/tk* from ftp.cs.berkeley.edu
  801. description:    Tk is a X11 gui library that is designed to interoperate
  802.         with TCL. It provides a very easy way to create sophisticated
  803.         applications.  The appearence of Tk is very similar to Motif.
  804. updated:    1993/11/15
  805.  
  806. language:    TCL
  807. package:    BOS - The Basic Object System
  808. version:    1.31
  809. parts:        library
  810. author:        Sean Levy <Sean.Levy@cs.cmu.edu>
  811. how to get:    ftp tcl/? from barkley.berkeley.edu
  812. description:    BOS is a C-callable library that implements the notion of
  813.         object and which uses Tcl as its interpreter for interpreted
  814.         methods (you can have "compiled" methods in C, and mix compiled
  815.         and interpreted methods in the same object, plus lots more
  816.         stuff).     I regularly (a) subclass and (b) mixin existing
  817.         objects using BOS to extend, among other things, the set of tk
  818.         widgets (I have all tk widgets wrapped with BOS "classes"). BOS
  819.         is a class-free object system, also called a prototype-based
  820.         object system; it is modeled loosely on the Self system from
  821.         Stanford.
  822. updated:    1992/08/21
  823.  
  824. language:    TCL
  825. package:    Tcl-DP
  826. version:    3.0
  827. parts:        library
  828. author:        Larry Rowe ?
  829. how to get:    ftp pub/multimedia/Tcl-DP from toe.cs.berkeley.edu
  830. description:    Tcl-DP extends the "send" by removing the restriction
  831.         that you can only send to other clients of the same 
  832.         X11 server.  [could someone give a better description? --ed]
  833. updated:    ?
  834.  
  835. language:    Tcl
  836. package:    Tickle
  837. version:    5.0v1
  838. parts:        Text Editor, File Translator, TCL Interpreter
  839. author:        time@ice.com
  840. how to get:    /pub/vendor/ice/tickle/Tickle5.0v1.hqx from ftp.msen.com
  841. description:    A Macintosh TCL interprter and library.     It includes a 
  842.         text editor (>32k); file translation utilities; support
  843.         for tclX extensions; some unix-equivelent utilites; access
  844.         to Macintosh functions (Resource Manager, Communications
  845.         Toolbox, OSA Components, Editions, and Apple Events); OSA
  846.         Script Support; and Drag and Drop.
  847. bugs:        time@ice.com?
  848. requires:    ?
  849. ports:        Mac
  850. portability:    Mac-specific package
  851. updated:    1994/01/12
  852. lref:        TCL
  853.  
  854. language:    TCL
  855. package:    Wafe
  856. version:    0.95
  857. parts:        interface
  858. author:        Gustaf Neumann <neumann@watson.ibm.com>
  859. how to get:    ftp pub/src/X11/wafe/wafe-0.95.tar.gz from ftp.wu-wien.ac.at
  860. description:    Wafe (Widget[Athena]front end) is a package that implements
  861.         a symbolic interface to the Athena widgets (X11R5) and
  862.         OSF/Motif.  A typical Wafe application consists of two
  863.         parts: a front-end (Wafe) and an application program which
  864.         runs typically as a separate process.  The distribution
  865.         contains sample application programs in Perl, GAWK, Prolog,
  866.         TCL, C and Ada talking to the same Wafe binary.
  867. discussion:    send "subscribe Wafe <Your Name>" to listserv@wu-wien.ac.at
  868. portability:    very high, just needs X11R4 or X11R5.
  869. updated:    1993/07/01
  870.  
  871. language:    TCL
  872. package:    Extended Tcl (tclx)
  873. version:    7.2a
  874. parts:        library
  875. author:        Mark Diekhans <markd@NeoSoft.com>, Karl ?
  876. how to get:    ftp pub/tcl/beta/tclX7.1a-B5.tar.Z from ftp.neosoft.com
  877. description:    Extended Tcl adds statements to the TCL language to provide
  878.         high-level access unix system primitives.
  879. contact:    tcl-project@NeoSoft.com
  880. updated:    1993/11/19
  881.  
  882. language:    TCL
  883. package:    tcl-debug
  884. version:    ?
  885. parts:        debugger
  886. author:        Don Libes <libes@cme.nist.gov>
  887. how to get:    ftp pub/expect/tcl-debug.tar.Z from ftp.cme.nist.gov
  888. description:    A debugger for Tcl that can be easily embedded in other
  889.         applications.  It is included with many other Tcl libraries.
  890. updated:    ?
  891.  
  892. language:    TCL
  893. package:    Cygnus Tcl Tools
  894. version:    Release-930124
  895. parts:        ?
  896. author:        david d 'zoo' zuhn <zoo@cygnus.com>
  897. how to get:    ftp pub/tcltools-* from cygnus.com
  898. description:    A rebundling of Tcl and Tk into the Cyngus GNU build 
  899.         framework with 'configure'.
  900. updated:    1993/01/24
  901.  
  902. language:    Z-shell
  903. package:    zsh
  904. version:    2.3.1 (2.4 in beta)
  905. parts:        interpreter
  906. author:        Paul Falstad <pf@ttisms.com>
  907. how to get:    ftp pub/bas/zsh/zsh-*.tar.z from carlo.phys.uva.nl
  908. description:    zsh is most similar to ksh, while many of the additions are to
  909.         please csh users.
  910. features:    + multi-line commands editable as a single buffer,
  911.         + variable editing (vared),
  912.         + command buffer stack,
  913.         + recursive globbing,
  914.         + manipulation of arrays,
  915.         + spelling correction.
  916. ports:        Berkeley-based Unix, SVR4-based Unix 
  917. discussion:    zsh-request@cs.uow.edu.au
  918. contact:    zsh-list@cs.uow.edu.au
  919. updated:    1993/03/23
  920.  
  921. functional languages
  922. -------------------------------------------------------------------------------
  923. category:    functional languages
  924. description:    [someone have a good one-liner?     --ed]
  925. lref:        es
  926. lref:        LIFE
  927. lref:        ALLOY
  928.  
  929. language:    Caml
  930. package:    CAML
  931. version:    3.1
  932. parts:        compiler, interactive development environment
  933. author:        Ascander Suarez, Pierre Weis, Michel Mauny, others (INRIA)
  934. how to get:    ftp lang/caml/* from ftp.inria.fr
  935. description:    Caml is a programming language from the ML/Standard ML family,
  936.         with functions as first-class values, static type inference
  937.         with polymorphic types, user-defined variant and product
  938.         types, and pattern-matching. The CAML V3.1 implementation
  939.         adds lazy and mutable data structures, a "grammar" mechanism
  940.         for interfacing with the Yacc parser generator,
  941.         pretty-printing tools, high-performance arbitrary-precision
  942.         arithmetic, and a complete library.
  943. bugs:        caml@margaux.inria.fr
  944. ports:        Sun-3 Sun-4 Sony-68k Sony-R3000 Decstation Mac-A/UX Apollo
  945. portability:    low (built on a proprietary runtime system)
  946. status:        maintained but no longer developed
  947. discussion:    caml-list@margaux.inria.fr, comp.lang.ml
  948. contact:    Pierre Weis <Pierre.Weis@inria.fr>
  949. updated:    1991/10/20
  950.  
  951. language:    Caml 
  952. package:    Caml Light
  953. version:    0.6
  954. parts:        bytecode compiler, emacs mode, libraries, scanner generator, 
  955.         parser generator, runtime, interactive development environment
  956. author:        Xavier Leroy, Damien Doligez (INRIA)
  957. how to get:    ftp lang/caml-light/* from ftp.inria.fr
  958. description:    Caml is a programming language from the ML/Standard ML family,
  959.         with functions as first-class values, static type inference
  960.         with polymorphic types, user-defined variant and product
  961.         types, and pattern-matching. The Caml Light implementation
  962.         adds a Modula-2-like module system, separate compilation,
  963.         lazy streams for parsing and printing, graphics primitives,
  964.         and an interface with C.
  965. features:    very small
  966. bugs:        caml-light@margaux.inria.fr
  967. ports:        most unix, Macintosh, MSDOS (16 and 32 bit modes), Atari ST
  968. portability:    very high
  969. status:        actively developed
  970. discussion:    caml-list@margaux.inria.fr, comp.lang.ml
  971. contact:    Xavier Leroy <Xavier.Leroy@inria.fr>
  972. updated:    1993/10/06
  973.  
  974. language:    Concurrent Clean
  975. package:    The Concurrent Clean System
  976. version:    0.8.1
  977. parts:        development environment, documentation, compiler(byte-code), 
  978.         compiler(native), interpreter(byte-code), examples
  979. author:        Research Institute for Declarative Systems, 
  980.         University of Nijmegen
  981. how to get:    ftp pub/Clean/* from ftp.cs.kun.nl 
  982. description:    The Concurrent Clean system is a programming environment for
  983.         the functional language Concurrent Clean, developed at the
  984.         University of Nijmegen, The Netherlands. The system is one of
  985.         the fastest implementations of functional languages available
  986.         at the moment. Its I/O libraries make it possible to do modern,
  987.         yet purely functional I/O (including windows, menus, dialogs
  988.         etc.) in Concurrent Clean. With the Concurrent Clean system it
  989.         is possible to develop real-life applications in a purely
  990.         functional language.
  991.         * lazy and purely functional
  992.         * strongly typed - based on Milner/Mycroft scheme
  993.         * module structure
  994.         * modern I/O
  995.         * programmer-infulenced evaluation order by annotations
  996. ports:        Sun-3, Sun-4, Macintosh
  997. contact:    clean@cs.kun.nl
  998. updated:    1992/11/07
  999.  
  1000. language:    FP
  1001. package:    ? funcproglang ?
  1002. version:    ?
  1003. parts:        translator(C)
  1004. author:        ?
  1005. how to get:    comp.sources.unix archive volume 13
  1006. description:    ? Backus Functional Programming ?
  1007. updated:    ?
  1008.  
  1009. language:    Gofer (Haskell derivative)
  1010. package:    Gofer
  1011. version:    2.28b
  1012. parts:        interpreter, compiler(->C), documentation, examples
  1013. author:        Mark Jones <jones-mark@cs.yale.edu>
  1014. how to get:    ftp pub/haskell/gofer/* from nebula.cs.yale.edu
  1015.     UK:        ftp pub/haskell/gofer/* from ftp.dcs.glasgow.ac.uk
  1016.     Sweden:    ftp pub/haskell/gofer/* from ftp.cs.chalmers.se
  1017. description:    Gofer is based quite closely on the Haskell programming
  1018.         language, version 1.2.    It supports lazy evaluation, higher
  1019.         order functions, pattern matching, polymorphism, overloading
  1020.         etc and runs on a wide range of machines.
  1021. conformance:    Gofer does not implement all of Haskell, although it is 
  1022.         very close.
  1023. ports:        many, including Sun, PC, Mac, Atari, Amiga
  1024. status:        maintained but not developed (for a while anyway)
  1025. updated:    1993/08/02
  1026.  
  1027. langauge:    Gofer
  1028. iref:        (BNF) Ratatosk
  1029.  
  1030. language:    Haskell
  1031. package:    Chalmers Haskell (aka Haskell B.)
  1032. version:    0.999.5
  1033. parts:        compiler, interpreter, library, documentation, examples
  1034. author:        Lennart Augustsson <augustss@cs.chalmers.se>
  1035. how to get:    ftp pub/haskell/chalmers/* from nebula.cs.yale.edu
  1036.     UK:        ftp pub/haskell/chalmers/* from ftp.dcs.glasgow.ac.uk
  1037.     Sweden:    ftp pub/haskell/chalmers/* from ftp.cs.chalmers.se
  1038. description:    Full-featured implementation of Haskell 1.2, 
  1039.         with quite a few "Haskell B" extensions
  1040. requires:    LML
  1041. ports:        many, including Sun, DEC, Sequent, PC, Symmetry
  1042.         (unsupported versions for NS32000, RT/PC, CRAY, SUN3, VAX,
  1043.         ARM, and RS6000.)
  1044. discussion:    haskell-request@cs.yale.edu
  1045.     europe:    haskell-request@dcs.glasgow.ac.uk
  1046. contact:    hbc@cs.chalmers.se
  1047. updated:    1993/08/02
  1048.  
  1049. language:    Haskell
  1050. package:    Glasgow Haskell Compiler (GHC)
  1051. version:    0.19
  1052. parts:        translator (C, SPARC), profiler
  1053. author:        AQUA project, headed by Simon Peyton Jones
  1054.         <simonpj@dcs.glasgow.ac.uk>
  1055. location:    ftp pub/haskell/glasgow/* from nebula.cs.yale.edu
  1056.     UK:        ftp pub/haskell/glasgow/* from ftp.dcs.glasgow.ac.uk
  1057.     Sweden:    ftp pub/haskell/glasgow/* from ftp.cs.chalmers.se
  1058. description:    A near complete subset of Haskell 1.2, with numerous
  1059.         extensions.
  1060. conformance:    Almost all of Haskell 1.2 is implemented.
  1061. reference:    Papers at ftp.dcs.glasgow.ac.uk (only) in pub/glasgow-fp,
  1062.         "Imperative functional programming",
  1063.         Peyton Jones & Wadler, POPL '93
  1064.         "Unboxed data types as first-class citizens",
  1065.         Peyton Jones & Launchbury, FPCA '91
  1066.         "Profiling lazy functional languages",
  1067.         Sansom & Peyton Jones, Glasgow workshop '92
  1068.         "Implementing lazy functional languages on stock hardware",
  1069.         Peyton Jones, Journal of Functional Programming, Apr 1992
  1070. features:    An extensible I/O system is provided, based on a "monad"
  1071.         In-line C code
  1072.         Fully fledged unboxed data types,
  1073.         Incrementally-updatable arrays
  1074.         Mutable reference types.
  1075.         Generational garbage collector
  1076. bugs:        <glasgow-haskell-bugs@dcs.glasgow.ac.uk>
  1077. requires:    GNU C 2.1+, perl
  1078. ports:        solid: Sun4, Sun3; sort of: HP-PA, Alpha, DECstation
  1079. portability:    should be high
  1080. contact:    <glasgow-haskell-request@dcs.glasgow.ac.uk>
  1081. updated:    1993/12/17
  1082.  
  1083. language:    Haskell
  1084. package:    Yale Haskell
  1085. version:    2.0.5
  1086. parts:        compiler, documentation, reference manual (dvi format)
  1087. author:        Yale Haskell project <haskell-request@cs.yale.edu>
  1088. how to get:    ftp pub/haskell/yale/* from nebula.cs.yale.edu
  1089.     UK:        ftp pub/haskell/yale/* from ftp.dcs.glasgow.ac.uk
  1090.     Sweden:    ftp pub/haskell/yale/* from ftp.cs.chalmers.se
  1091. description:    ?
  1092. features:    X-window interface, available at the Haskell level too.
  1093. requires:    CMU Common Lisp, Lucid, Common Lisp, Allegro Common Lisp, or
  1094.         Harlequin LispWorks
  1095. ports:        SunOS 4.1.2, Sparc 10 (sun4m) 4.1.3
  1096. discussion:    haskell-request@cs.yale.edu
  1097.     europe:    haskell-request@dcs.glasgow.ac.uk
  1098. contact:    haskell-request@cs.yale.edu
  1099. updated:    1993/07/14
  1100.  
  1101. language:    Hope
  1102. package:    ?
  1103. version:    ?
  1104. parts:        ?
  1105. author:        ?
  1106. how to get:    ftp ? from brolga.cc.uq.oz.au
  1107. description:    Functional language with polymorphic types and lazy lists.
  1108.         First language to use call-by-pattern.
  1109. ports:        Unix, Mac, PC
  1110. updated:    1992/11/27
  1111.  
  1112. language:    IFP (Illinois Functional Programming)
  1113. package:    ifp
  1114. version:    0.5
  1115. parts:        interpreter
  1116. author:        Arch D. Robison <robison@shell.com>
  1117. how to get:    comp.sources.unix archive volume 10
  1118. description:    A variant of Backus' "Functional Programming" language
  1119.         with a syntax reminiscent of Modula-2.    The interpreter
  1120.         is written in portable C.
  1121. reference:    [1] Arch D. Robison, "Illinois Functional Programming: A
  1122.         Tutorial," BYTE, (February 1987), pp. 115--125.
  1123.         [2] Arch D. Robison, "The Illinois Functional
  1124.         Programming Interpreter," Proceedings of 1987 SIGPLAN
  1125.         Conference on Interpreters and Interpretive Techniques,
  1126.         (June 1987), pp. 64-73
  1127. ports:        Unix, MS-DOS, CTSS (Cray)
  1128. updated:    ?
  1129.  
  1130. language:    ML
  1131. package:    LML
  1132. version:    ?
  1133. parts:        compiler(?), interactive environment
  1134. author:        ?
  1135. how to get:    ftp pup/haskell/chalmers/* from animal.cs.chalmers.se
  1136. description:    lazy, completely functional variant of ML.
  1137. ports:        ?
  1138. contact:    ?
  1139. updated:    1992/07/06
  1140.  
  1141. language:    Standard ML
  1142. package:    SML/NJ (Standard ML of New Jersey)
  1143. version:    0.93
  1144. parts:        compiler, libraries, extensions, interfaces, documentation,
  1145.         build facility
  1146. author:        D. B. MacQueen <dbm@research.att.com>, Lal George 
  1147.         <george@research.att.com>, AJ. H. Reppy <jhr@research.att.com>,
  1148.         A. W. Appel <appel@princeton.edu>
  1149. how to get:    ftp dist/ml/* from research.att.com
  1150. description:    Standard ML is a modern, polymorphically typed, (impure)
  1151.         functional language with a module system that supports flexible
  1152.         yet secure large-scale programming.  Standard ML of New Jersey
  1153.         is an optimizing native-code compiler for Standard ML that is
  1154.         written in Standard ML.     It runs on a wide range of
  1155.         architectures.    The distribution also contains:
  1156.         + an extensive library - The Standard ML of New Jersey Library,
  1157.         including detailed documentation.
  1158.         + CML - Concurrent ML
  1159.         + eXene - an elegant interface to X11 (based on CML)
  1160.         + SourceGroup - a separate compilation and "make" facility
  1161.         CML, eXene and SourceGroup not in the Macintosh port, but the
  1162.         Mac port has a built-in editor.
  1163. ports:        M68K, SPARC, MIPS, HPPA, RS/6000, I386/486, Macintosh
  1164. updated:    1993/02/18
  1165.  
  1166. language:    Concurrent ML
  1167. package:    Concurrent ML
  1168. version:    0.9.8
  1169. parts:        extension
  1170. author:        ?
  1171. how to get:    ftp pub/CML* from ftp.cs.cornell.edu or get SML/NJ
  1172. description:    Concurrent ML is a concurrent extension of SML/NJ, supporting
  1173.         dynamic thread creation, synchronous message passing on
  1174.         synchronous channels, and first-class synchronous operations.
  1175.         First-class synchronous operations allow users to tailor their
  1176.         synchronization abstractions for their application.  CML also
  1177.         supports both stream I/O and low-level I/O in an integrated
  1178.         fashion.
  1179. bugs:        sml-bugs@research.att.com
  1180. requires:    SML/NJ 0.75 (or later)
  1181. updated:    1993/02/18
  1182.  
  1183. language:    SASL
  1184. iref:        (Pascal) Tim Budd's C++ implementation of Kamin's interpreters
  1185.  
  1186. language:    Standard ML
  1187. package:    sml2c
  1188. version:    ?
  1189. parts:        compiler(->C), documentation, tests
  1190. author:        School of Computer Science, Carnegie Mellon University 
  1191. how to get:    ftp /usr/nemo/sml2c/sml2c.tar.Z from dravido.soar.cs.cmu.edu
  1192.     Linux:    ftp pub/linux/smlnj-0.82-linux.tar.Z from ftp.dcs.glasgow.ac.uk
  1193. description:    sml2c is a Standard ML to C compiler.  sml2c is a batch
  1194.         compiler and compiles only module-level declarations,
  1195.         i.e. signatures, structures and functors.  It provides
  1196.         the same pervasive environment for the compilation of
  1197.         these programs as SML/NJ.  As a result, module-level
  1198.         programs that run on SML/NJ can be compiled by sml2c
  1199.         without any changes.  Based on SML/NJ version 0.67 and shares
  1200.         front end and most of its runtime system, but does not support
  1201.         SML/NJ style debugging and profiling.
  1202. conformance:    superset
  1203.         + first-class continuations,
  1204.         + asynchronous signal handling
  1205.         + separate compilation 
  1206.         + freeze and restart programs
  1207. ports:        IBM-RT Decstation3100 Omron-Luna-88k Sun-3 Sun-4 386(Mach)
  1208. portability:    easy, easier than SML/NJ
  1209. contact:    david.tarditi@cs.cmu.edu anurag.acharya@cs.cmu.edu 
  1210.         peter.lee@cs.cmu.edu
  1211. updated:    1991/06/27
  1212.  
  1213. language:    Standard ML
  1214. package:    The ML Kit
  1215. version:    1
  1216. parts:        interprter, documentation
  1217. author:        Nick Rothwell, David N. Turner, Mads Tofte <tofte@diku.dk>,
  1218.         and Lars Birkedal at Edinburgh and Copenhagen Universities.
  1219. how to get:    ftp diku/users/birkedal/* from ftp.diku.dk
  1220.     UK:        ftp export/ml/mlkit/* from lfcs.ed.ac.uk
  1221. description:    The ML Kit is a straight translation of the Definition of
  1222.         Standard ML into a collection of Standard ML modules.  For
  1223.         example, every inference rule in the Definition is translated
  1224.         into a small piece of Standard ML code which implements it. The
  1225.         translation has been done with as little originality as
  1226.         possible - even variable conventions from the Definition are
  1227.         carried straight over to the Kit.  The Kit is intended as a
  1228.         tool box for those people in the programming language community
  1229.         who may want a self-contained parser or type checker for full
  1230.         Standard ML but do not want to understand the clever bits of a
  1231.         high-performance compiler. We have tried to write simple code
  1232.         and modular interfaces.
  1233. updated:    1993/03/12
  1234.  
  1235. language:    SISAL 1.2
  1236. package:    The Optimizing SISAL Compiler
  1237. version:    12.0
  1238. parts:        compiler?, manuals, documentation, examples, debugger,...
  1239. author:        David C. Cann <cann@sisal.llnl.gov>
  1240. how to get:    ftp pub/sisal from sisal.llnl.gov
  1241. description:    Sisal is a functional language designed to be competitive with
  1242.         Fortran, and other imperative languages for scientific jobs.  
  1243.         In particualar, OSC uses advanced optimizing techniques to 
  1244.         achieve fast speeds for computation intensive programs.     
  1245.         It also features routines for making efficient use
  1246.         of parallel processors, such as that on the Cray.
  1247. ports:        ?
  1248. updated:    ?
  1249. -- 
  1250. Send compilers articles to compilers@iecc.com or
  1251. {ima | spdcc | world}!iecc!compilers. Meta-mail to compilers-request@iecc.com.
  1252.  
  1253.